/**
 * @file
 * @brief header of (module)
 * @details
 *  \b purpose
 * 
 * @author buaa.byl
 * @date 2012-07-24 created
 */

#ifndef SXML_PARSE_H_E438AA00_D534_11E1_AE1D_005056C00008_INCLUDED_
#define SXML_PARSE_H_E438AA00_D534_11E1_AE1D_005056C00008_INCLUDED_

/* ************************************************************************* */
/*              include files                                                */
/* ************************************************************************* */


/* ************************************************************************* */
/*              C linkage declaration (begin)                                */
/* ************************************************************************* */
#if defined(__cplusplus)
extern "C"
{
#endif


/* ************************************************************************* */
/*              declare of module type or struct                             */
/* ************************************************************************* */
typedef void (*CALLBACK_META)(int level, const char* meta);
typedef void (*CALLBACK_TAGS)(int level, const char* tag);
typedef void (*CALLBACK_DATA)(int level, const char* data);
typedef void (*CALLBACK_PROP)(int level, const char* property,
        const char* value);


/* ************************************************************************* */
/*              declare of module interface                                  */
/* ************************************************************************* */
int sxmlInitCallback(CALLBACK_META cb_meta,
        CALLBACK_TAGS cb_tags,
        CALLBACK_DATA cb_data,
        CALLBACK_PROP cb_prop);
int sxmlParseFromFile(const char* xmlfile);

/* ************************************************************************* */
/*              C linkage declaration (end)                                  */
/* ************************************************************************* */
#if defined(__cplusplus)
}
#endif


#endif

